distributed communication explained